package cn.echase.ecare.yinfayun.service;

import cn.echase.ecare.yinfayun.domain.dto.ElderStatisticsDto;
import cn.echase.ecare.yinfayun.domain.dto.StatisticsDto;
import cn.echase.ecare.yinfayun.domain.vo.ElderAgeInfoVo;
import cn.echase.ecare.yinfayun.domain.vo.OrgElderCenterVo;
import org.dromara.common.mybatis.core.page.TableDataInfo;

import java.util.List;
import java.util.Map;


/**
 * 长者年龄数据统计Service接口
 *
 * @author yinyy
 * @date 2024-04-23
 */
public interface IElderAgeStatisticService {


    /**
     * 查询机构长者年龄数据统计列表
     *
     * @param statisticsDto 查询条件
     * @return 机构照护等级数据统计列表
     */
    TableDataInfo<ElderAgeInfoVo> eldersAgeStatisticPageList(StatisticsDto statisticsDto);

    /**
     * 查询机构长者年龄数据统计列表
     *
     * @param statisticsDto 查询条件
     * @return 机构照护等级数据统计列表
     */
    List<ElderAgeInfoVo> eldersAgeStatisticList(StatisticsDto statisticsDto);


    /**
     * 获取机构最大、最小和平均年龄
     *
     * @param statisticsDto 查询条件
     * @return 机构最大、最小和平均年龄
     */
    Map<String, Object> getElderAgeStatisticInfo(StatisticsDto statisticsDto);

    /**
     * 年龄段/楼栋相应长者列表查询
     *
     * @param elderStatisticsDto 查询条件
     * @return 长者列表
     */
    TableDataInfo<OrgElderCenterVo> getElderAgeDetailList(ElderStatisticsDto elderStatisticsDto);

}
